#ifndef BSP_SYSTEM_H
#define BSP_SYSTEM_H

#include "ht32.h"
#include "GPIO.h"
#include "BFTM0.h"
#include "UART0.h"
#include "UART1.h"
#include "USART0.h"
#include "USART1.h"
#include "ADC.h"
#include "SPI1.h"
#include "key_app.h"
#include "mq7_app.h"
#include "delay.h"
#include "buzz_app.h"
#include "GUI.h"
#include "lcd.h"
#include "bmp.h"
#include "math.h"
#include "uart_app.h"
#include "esp01s.h"
#include "sim800l.h"
#include "stdio.h"
#include "string.h"
#include "syn6288.h"
#include "asr_pro.h"
#include "ht32f5xxxx_pdma.h"
#include "MLX.h"

extern u32 adc_value;
extern u8 co_detected;
extern u8 BUZZ_flag;
extern u8 key_val;  // ��ǰ����״̬
extern u8 key_old;  // ǰһ����״̬
extern u8 key_down; // ���µİ���
extern u8 key_up;   // �ͷŵİ���
extern vu8 adc_result_update;
extern vu16 adc_result[14];
extern float ppm;
extern uint8_t asr_rx_flag;      // 接收完成标志
extern uint8_t asr_rx_buf[2048]; // 接收到的数据缓冲区
extern uint8_t city_data[2][32];
extern uint8_t weather_data[4][6][32];
extern uint8_t one_w[32];
extern uint8_t two_w[32];
extern uint8_t three_w[32];
extern uint8_t four_w[32];
extern uint8_t one_t[32];
extern uint8_t two_t[32];
extern uint8_t three_t[32];
extern uint8_t four_t[32];
extern float mq_value;
extern uint8_t mq_baoj;
extern uint8_t jinji;
#endif
